Method and System Incorporating Business Rules and Price Optimization for Financial System

ABSTRACT

A computer system for modeling a portfolio of products in a financial system to determine the rate of a target product. The products are defined by attribute values, an attribute being any criteria that impacts product rates. Linear associated product rules are used by the computer system to create an optimized scenario of total profit and overall volume of sales for the portfolio. From the optimized scenario a rate for the target product can be determined which maintains a financial institution&#39;s strategic and business objectives. The optimizing process includes applying the associated product rules to products actively contributing to key performance indicators. Densification is then used to infer the rate for all other products in the portfolio. Finally, if the starting rate of a product violates an associated product rule, the starting rate is relaxed to avoid the violation.

FIELD OF THE INVENTION

The present invention relates in general to economic modeling and, moreparticularly, to a system and method for optimizing key performanceindicators when determining the pricing of products offered by financialinstitutions.

BACKGROUND OF THE INVENTION

Economic and financial modeling and planning is commonly used toestimate or predict the performance and outcome of real systems, givenspecific sets of input data of interest. A model is a mathematicalexpression or representation which predicts the outcome or behavior ofthe system under a variety of conditions. In one sense, it is relativelyeasy, in the past tense, to review historical data, understand its pastperformance, and state with relative certainty that the system's pastbehavior was indeed driven by the historical data. A much more difficulttask, but one that is extremely valuable, is to generate a mathematicalmodel of the system which predicts how the system will behave, or wouldhave behaved, with different sets of data and assumptions. Whileforecasting and backcasting using different sets of input data isinherently imprecise, i.e., no model can achieve 100% certainty, thefield of probability and statistics has provided many tools which allowsuch predictions to be made with reasonable certainty and acceptablelevels of confidence.

In its basic form, the economic model can be viewed as a predicted oranticipated outcome of a mathematical expression, as driven by a givenset of input data and assumptions. The input data is processed throughthe mathematical expression representing either the expected or currentbehavior of the real system. The mathematical expression is formulatedor derived from principles of probability and statistics, often byanalyzing historical data and corresponding known outcomes, to achieve abest fit of the expected behavior of the system to other sets of data,both in terms of forecasting and backcasting. In other words, the modelshould be able to predict the outcome or response of the system to aspecific set of data being considered or proposed, within a level ofconfidence, or an acceptable level of uncertainty.

Economic-based models have numerous variables and influences whichdetermine its behavior. For example, in the case of home equity loansand lines of credit, some common rules are: (1) maximum rate change percell not to exceed predefined limit per pricing cycle; (2) maximum ratenot to exceed predefined values; (3) no price differentiation bychannel; (4) no price differentiation between 2^(nd) and 3^(rd) liens;(5) for fixed rate products, rates have a consistent gap between FICO(Fair Isaac Corporation) and term tiers within a dollar tier; (6) norate differentiation between home equity loan prices and fullyamortizing fix rate loan option prices (for similar parameters); (7)each product cell has a positive net present value of performance; (8)each product cell has a risk-adjusted return on capital not lower than apredefined level; and (9) portfolio of home equity line of credit for2^(nd) liens have a minimum return on tangible equity(ROTE) ofpredefined level and a minimum risk-adjusted return on capital of apredefined value.

For an accurate model, these business rules must be considered duringthe optimization cycle. In doing so, the first problem encountered ishow to describe and build an intelligent network that maps multitude ofrules spanning millions of rate cells into a minimally defined structurecommunicating to the optimization system. Often there is also a severescarcity of available information at the rate cell level to base anoptimized rate recommendation independent of whether the productcontributes to the financial institution's key performance indicators.

A need exists for a method to effectively model a wide class of businessrules, allowing financial institutions to maintain a multitude of ratecells while optimizing their key performance indicators.

SUMMARY OF THE INVENTION

In one embodiment, the present invention is a computer implementedmethod of determining an optimized rate value of a target product in afinancial system, comprising providing a plurality of products in thefinancial system, defining a first attribute having a first attributevalue for each of the plurality of products, wherein the first attributeis a criteria that impacts a rate value of the plurality of products,defining a first associated product rule, the first associated productrule being a linear rule between two of the plurality of products,optimizing the first associated product rule to produce an optimizedscenario, wherein optimizing comprises applying the first associatedproduct rule to two of the plurality of products which activelycontributes to a key product indicator, performing densification toinfer the rate value for each of the plurality of products which do notactively contribute to the key product indicator, and, relaxing astarting rate of one of the plurality of products where the startingrate violates the first associated product rule, and recommending theoptimized rate value for the target product to achieve a target in theoptimized scenario, wherein the target includes a profit value and asales volume value.

In another embodiment, the present invention is a method of providing acomputer model of an optimized rate value of a target product in afinancial system, comprising providing a plurality of products in afinancial system, providing a first attribute having a first attributevalue for each of the plurality of products, wherein the first attributeis a criteria that impacts a rate value of the plurality of products,providing a first associated product rule, the first associated productrule being a linear rule between two of the plurality of products,solving an optimizing process using the first associated product rule,wherein the optimizing process comprises transforming the firstassociated product rule into a first mathematical formula, applying thefirst associated product rule to two of the plurality of products whichactively contributes to a key product indicator, performingdensification to infer the rate value for each of the plurality ofproducts which do not actively contribute to the key product indicator,and relaxing a starting rate of one of the plurality of products wherethe starting rate violates the first associated product rule, andproviding a recommendation for the optimized rate value of the targetproduct to achieve a target in the optimized scenario, wherein thetarget includes a profit value and a sales volume value.

In yet another embodiment the present invention is a computer programproduct usable with a programmable computer processor having a computerreadable program code embodied therein, comprising, computer readableprogram code which provides a plurality of products in a financialsystem, computer readable program code which provides a first attributehaving a first attribute value for each of the plurality of products,wherein the first attribute is a criteria that impacts a rate value ofthe plurality of products, computer readable program code which providesa first associated product rule, the first associated product rule beinga linear rule between two of the plurality of products, computerreadable program code which solves an optimizing process using the firstassociated product rule, wherein the optimizing process comprisescomputer readable program code applying the first associated productrule to two of the plurality of products which actively contributes to akey product indicator, computer readable program code performingdensification to infer the rate value for each of the plurality ofproducts which do not actively contribute to the key product indicator,and computer readable program code relaxing a starting rate of one ofthe plurality of products where the starting rate violates the firstassociated product rule, and computer readable program code whichcreates a graph of the optimized scenario that can be used forrecommending the optimized rate value of a target product to achieve atarget in the optimized scenario, wherein the target includes a profitvalue and a sales volume value.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a high level illustration of the relationship between afinancial institution, an embodiment of a price optimization for banking(POB) system, and a customer;

FIG. 2 illustrates the user-initiated processes involved in a POB systemwhere the POB system is implemented as a computer program with a userinterface;

FIG. 3 illustrates the concept of attribute hierarchy and partitions;

FIGS. 4 a-4 d illustrate a graphical user interface for definingassociated product rules;

FIGS. 5 a-5 b illustrate a graphical user interface for definingcell-level rules;

FIGS. 6 a-6 d illustrate a graphical user interface for initiating theoptimization process and viewing the results;

FIG. 7 is an attribute layout graphically showing the relationshipbetween AVS_(i), AXIS_(i), product space, and cutoff zone for anattribute i;

FIG. 8 illustrates the difference between product space and pricingspace;

FIGS. 9 a and 9 b illustrate product space with two attributes;

FIG. 10 presents a graph of the pricing attributes for multiple productsin two dimensions;

FIG. 11 graphically illustrates the process of densification; and

FIG. 12 illustrates an example system for operating the POB system.

DETAILED DESCRIPTION OF THE DRAWINGS

The present invention is described in one or more embodiments in thefollowing description with reference to the Figures, in which likenumerals represent the same or similar elements. While the invention isdescribed in terms of the best mode for achieving the invention'sobjectives, it will be appreciated by those skilled in the art that itis intended to cover alternatives, modifications, and equivalents as maybe included within the spirit and scope of the invention as defined bythe appended claims and their equivalents as supported by the followingdisclosure and drawings.

The present discussion considers economic modeling as applied tofinancial institutions. In particular, understanding the relationshipsbetween products offered by a financial institution, such as a homeequity loan or other line of credit, and the unique combination ofattributes which determine the price of those products. For example,determining the price of a home equity loan can include a uniquecombination of factors such as loan type, region, distribution channel,lien position, combined loan to value ratio (CLTV), balance tier, termrange, FICO score, and custom score. While the rich variety ofattributes provide the benefits of a well-balanced portfolio and pricedifferentiation, it also adds to the complexity of maintaining the vastquantity of combinations of rate cells that need to be regularlymonitored and updated. The present system addresses how to effectivelymodel a wide class of business rules and allows financial institutionsto maintain a multitude of rate cells while optimizing their keyperformance indicators.

FIG. 1 is a high-level illustration of the relationship between afinancial institution, an embodiment of a price optimization for banking(POB) system, and a customer. The financial institution 10 is any entitythat provides financial services for a customer 16. Financialinstitution 10 is commonly a bank, building society, credit union, stockbrokerage, asset management firm or similar business and offers suchproducts as loans, certificates of deposit, underwriting, securities andother financial services.

When customer 16 approaches financial institution 10 for a product,financial institution 10 applies multiple business rules 12 to theinformation obtained from customer 16 and outside sources. Businessrules 12 may be defined by financial institution 10 or a regulatoryagency and thus, may be mandatory for all similar transactionsregardless of the service provider or may be specific to financialinstitution 10. Business rules 12 assist financial institution 10 inmaximizing its key performance indicators, meeting strategic objectives,and fulfilling legal obligations.

Demand model 14 represents the application of business rules 12 to aportfolio of products to determine the optimized rates. Demand model 14analyzes the data to predict demand or other attributes (price,promotion, merchandizing) of subsequent sales transactions. Theseoptimized rates are used by financial institution 10 in selling theproduct sought by customer 16. However, the relationship shown in FIG. 1also illustrates that customer 16 affects the demand model. Bypurchasing financial products, customer 16 affects the data relating tothe portfolio of products offered by financial institution 10. Productspurchased (and not purchased) by customer 16 affect key performanceindicators, the overall profit and volume of sales, as well as otherproduct information. As will be subsequently discussed, this impacts theoptimized rates that result from the demand model.

The rules which apply to any product are defined by the product'sattributes. Attributes are any criteria that could impact a product.Examples of attributes for a loan product include FICO scores, CLTV, andloan terms. Each product attribute is associated with a value or rangeof values. A product can, therefore, be described as a set of attributevalues. Thus, in a POB system, a financial institution may specify thatfor a given product, all other attributes being equal, the optimizedrate should decrease as the FICO attribute increases. Additionally, thefinancial institution may specify that the difference in rates betweenranges of FICO scores should be at most, or at least, or exactly, acertain amount. In other words, the rule may be specified as: “the rateof products with higher FICO attribute score must be lower than the rateof products with lower FICO attribute score.” The generation of therules translates such specifications into appropriate mathematical rulesfor products actively contributing to key performance indicators.

The rules take two forms, either associated product rules or cell-levelrules. Associated product rules are linear rules, or rules that arereducible to a linear form, between the rates of two products.Associated product rules include rules such as “rate of products with750 FICO<(less than) rate of product with 700 FICO” and “rate ofproducts with 60 month loan<rate of product with 66 month loan.”Associated product rules are subsequently discussed in detail.

Cell-level rules provide constraints on a single attribute of a productcell that contributes to the key performance indicators. For example, acell-level rule could provide: “return on Assets (ROA)>(greater than) 0for all products.” Each product has a multiple of key performanceindicator-driven properties. For example, loans have: yield (effectivenet return), ROA, capital allocation (a measurement of funding risk),and return on equity (ROE). In addition, cell-level rules address therules regarding the minimum and maximum bounds of the rate cell. Boundscan be defined in absolute terms or pegged to a dynamic index orcompetitor's rates. Cell-level rules are subsequently discussed indetail.

The difference between the rules can be illustrated mathematically asfollows:

ASSOCIATED PRODUCT RULE: r₁<r₂;

CELL-LEVEL RULE: f(r ₁)>0.

FIG. 2 illustrates the user-initiated processes involved in a POB systemwhere the POB system is implemented as a computer program with a userinterface. The first four steps relate to defining associated productrules and include: step 100 (defining the attribute list and hierarchy),step 102 (selecting the rule type), step 104 (selecting a rate movementdirection), and step 106 (specifying a gap value). Steps 100 through 104are repeated for every associated product rule that is created. Each ofthese steps is subsequently discussed in detail.

First, step 100 requires the attributes and attribute hierarchy of theassociated product rules to be defined. Again, a product is a financialinstrument identified by a unique combination of attribute values orranges, the attributes being any criteria that could impact the rate ofthe product. Attributes are organized in a hierarchal structure wherethe presence of a parent attribute determines the value of childattributes. Thus for a given product, a value of 700 for a parentattribute may determine that a child attribute must have a value of 60,where as a value of 500 for the same parent attribute would mean thevalue of the same child attribute is 80. The values or ranges of thechild attribute can be viewed as categorized into different partitionsbased on the value of parent attributes.

FIG. 3 illustrates the concept of attribute hierarchy and partitions.For the example product, associated product rules need to be generatedbased on FICO scores and terms. Looking first at FICO score 1120, theparent attribute is the state and can have a value of state 1122 orstate 1130. States 1122 and 1130 are associated with the childattributes for fair, good, and excellent, but the values of these childattributes may be different. For example, state 1122 may be Arizona andstate 1130 California. What values are considered fair 1124, good 1126,and excellent 1128 for a FICO score in Arizona may be different thanwhat is considered fair 1132, good 1134, and excellent 1136 inCalifornia. Similarly, the parent attributes for term 1140 is the typeof the term. If term 1140 is of type 1142, then particular values of T1short 1144 and T1 long 1146 apply These values may be different from thevalues of T1 short 1150 and T2 long 1152 had term 1140 been of type1148.

Only rules for products having attribute values within the samepartition are generated. For FIG. 3, this would mean there are no rulesbetween the attributes of products in state 1122 and products in state1130. Likewise, there are no rules between a product having a term oftype 1142 versus a term of type 1148. Due to the partition structure, inorder to support rules for a product such as “rates shall not increaseas FICO attribute increases,” the sequential increasing order for allFICO attribute values within the same partition needs to be separatelydefined.

FIG. 4 a shows a user interface for defining associated product rules.Section 116 of user interface 114 is broken into three columns fordefining each attribute used in an associated product rule: column 118(attribute name), column 120 (rule type), and column 122 (rate movementdirection). Section 124 also has three columns for defining the valuesof attributes created in section 116: column 126 (attribute group),column 128 (attribute ranges), and column 130 (gap values). Each ofthese parameters will subsequently be discussed in detail. The hierarchyfor the user interface is generally defined at the database level usingadditional software tools, such as one or more of SAP's BusinessIntelligence (BI) software applications. The attributes are,accordingly, part of a data set stored in the database system. Step 100,therefore, which requires the attributes and attribute hierarchy of theassociated product rules to be defined, has visibility to all theattributes and underlying hierarchies as defined in the database system.

Returning to FIG. 2, in step 102 a rule type is selected for eachattribute defined in step 100. Three different types of associatedproduct rules are recognized: inequality rules (also called inequalityassociated product rules), equality rules (also called equalityassociated product rules), and partition rules. Both inequality andequality rules define constraints on the product rates. Inequality rulesrequire that the rate of one product is less than or greater than therate for another product within the attribute hierarchy. Such rules maybe expressed as “r₁<r₂±α,” where α is a range over which the ruleapplies, also called a gap value, and ± presents the direction or thesign of the gap value, either negative or positive. Equality rulesrequire the rate for one product to be the same as a rate for anotherproduct within the attribute hierarchy. Such rules may be expressed as“r₁=r₂±α,” where α is a gap value and ± presents the direction or thesign of the gap value, either negative or positive. Lastly, partitionrules are rules that separate the products into groups which have nocross-group rules.

The three types of associated product rules are related to specifickinds of attributes. There are four kinds of attributes used inassociated product rules: pricing attributes, gap attributes,partitioning attributes, and descriptive attributes. Pricing attributesare relevant for creating inequality rules. Gap attributes are used inequality rules. Partitioning attributes are those products separatedinto different sets, across which no rules are generated. Finally,descriptive or none-attributes have no effect on the rule generationprocess and are included for explicitly specifying attributes that haveno affect on the rule generation. Descriptive attributes for one rulecan be attributes of another kind in another rule.

If attributes and an attribute hierarchy are defined in step 100, thenin step 102 these attributes can be designated as applying to equalityor inequality type rules. For example, a FICO attribute and relatedattribute hierarchy are defined at step 100. When a FICO score isdefined as a pricing attribute in step 102, an inequality rule mustresult because two otherwise identical products that are differentiatedonly by the value of their FICO attribute have different rates.Alternatively, a sales channel can be a gap attribute. When a saleschannel is defined as a gap attribute, an equity rule must result asproducts that differ only by sales channels have the same rate.

Partition rules result from partition attributes such as market group orproduct type. Thus, when a market group is defined as a partitionattribute it must result in a rule which prevents inequality or equalityrules from being applied across the market group partition. This isbecause similar products sold in different markets may have differentrates. Some attributes could be different attribute types depending ontheir use. Thus, the association of a rule type for a defined attributeensures the generation of the correct type of rule.

FIG. 4 b illustrates how the user interface 114 is used to associateattributes with inequality, equality, or partition type associatedproduct rules. First, box 134 is checked to signal that a new rule setis being created. Each attribute to be defined is given a name in column118. In the illustration, the three example attributes have been named:AGE, FICO, and TERM. In column 120, a drop-down list 132 is used toselect the type of attribute entered in column 118 as either pricing,partition, gap, or none (for example, descriptive). As stated above,attribute type corresponds directly with the type of associated productrule and, therefore, defining the attribute type also defines the ruletype. Attribute groups 126 are the leaf nodes defined in the attributehierarchy. Attribute ranges 128 are the ranges of the attribute valuesfor each attribute group 126. FIG. 3, for example, shows the FICO andTERMS hierarchy. For FICO attributes, the hierarchy has six attributegroups: fair 1124, good 1126, and excellent 1128 for state 1122, andfair 1132, good 1134, and excellent 1136 for state 1130. Each attributegroup has an attribute range that defines the possible range of values.For example, excellent 1128 or excellent 1136 may be defined as a FICOscore greater than 700.

Returning to FIG. 2, in step 104 the direction of any change in the rateis selected, if applicable. As the value of an attribute increases, therates defined by the associated rule may linearly increase or decreasein value or stay constant. There are four directions for rate movement:rate increase with a minimum gap, rate decrease with a minimum gap, rateincrease with an exact gap, and rate decrease with an exact gap. Rateincreases or decreases with a minimum gap are used with pricingattributes whereas rate increases or decreases with an exact gap areused with gap attributes. The actual value of the gap is specified instep 106.

FIG. 4 c illustrates how the user interface 114 is used to select thedirection of any change in the rate for the three example attributescolumn 118. In column 122, a drop-down list 134 is used to select thedirection of the rate movement for the attribute entered column 118 aseither: rate increase with minimum gap, rate decrease with minimum gap,rate increase with exact gap, rate decrease with exact gap, or none.

FIG. 4 d illustrates the specification of the gap value. In column 130the gap values are set as a default to 5. As shown in row 123, thedefault gap value can be changed by typing in a new number (shown hereas a value of 123). Attribute groups 126 and attribute ranges 128 may beset when the user creates the attribute hierarchy.

As previously discussed, cell-level rules can also be used by theoptimization procedure and they may be defined either before or afterdefining the associated product rules. Cell-level rules address theminimum and maximum bounds allowed in a rate cell. These bounds can bedefined in absolute terms or tied to a dynamic index or competitor'srates.

FIG. 5 a illustrates a graphical user interface 139 for the input of adefault cell-level rules (CLR) configuration. Users can enter thedefault maximum and minimum values for all products using the interface.Accordingly, each product may be assigned a CLR that defines minimum andmaximum allowed rate values. For example, a user may create a new ratemovement rule 141, provide a description 143 of the rule, and entermaximum values for rate movement down 145 and rate movement up 147.

FIG. 5 b illustrates a program functional interface 140 for defining CLRon a product level through the use of underlying complimentaryfunctional calls available upon client request. Four parameters aredefined for each cell-level rule: product key 142, current rate (rate atthe start of the optimization) 146, minimum rate for optimization 144,and maximum rate for optimization 148. Columns 150, 152, and 154represent data type, length, and precision of underlying data typescorrespondingly and are supplied for user convenience. Column 152defines the value length and column 154 defines the value's precision,neither are generally editable. The user may customize their CLR throughthe program interface by performing calculations on current rate,minimum rate, and maximum rate through complimentary function calls.

Once each rule has been defined, sets of rules can be associated with acreated event in step 108. Events are defined as any use of the POBsystem for a particular optimized result. For example, determining theoptimized rate of products in a particular market segment. Many eventsare repeatedly optimized. To prevent users from having to create andselect the same rules each time the POB system is used, an event iscreated which simply associates one or more rules for a particularoptimized result. For subsequent uses of the POB system, a prior-createdevent can be chosen and the rules for that event will already be createdand selected for optimization.

FIG. 6 a illustrates the first graphical user interface 156 forassociating rules with an event. By clicking the create button 158, auser interface called a wizard appears to guide users in defining theconfiguration for the optimization process. FIG. 6 b illustrates wizard160. Panel 162 shows where in the process the user is. During the ruleset selection step 164, input boxes for price activity description 166,price activity type 168, and created by 170 are presented. By using theinput boxes an event can be defined. Input box 166 is the descriptionfor the price activity. Input box 168 is the line of business selectedfor rate optimization, for example, home equity products or deposits,and box input box 170 may contain the user ID of the user that createdthe price activity. A drop down list 172 is used to select from rulesdefined in FIGS. 4 a-4 d, the selection associating the rule with theevent defined. Drop down list 172 lists the defined default CLR for allproducts. The default CLR generally includes two numbers, such as80/100, wherein the value 80 is the range for movement down (theoptimizer can move a product price down by a value of up to 80) and thevalue 100 is the range for movement up (the optimizer can move a productprice up by a value of up to 100).

Returning to FIG. 2, an optimization chart can be generated in step 110from the data created in the optimization process. In FIG. 6 c, the goalmanagement tab 220 is used to view the optimization chart. Therelationship between profit and volume for a product portfolio is shownas curve 214. From a business point of view, profit and volume of salesare trade-off characteristics. An increase in a product's profit margincan correlate to a decrease in the number of customers willing topurchase the product. To gain customers, the financial institution mightneed to seek less profit. Financial institutions can use theoptimization chart to find a target point 214 where both profit andtotal volume of sales match their strategic and business objectives.

Finally, in FIG. 2, a user may generate a price file in step 112. Byselecting a point along curve 214 of the optimization chart shown inFIG. 6 c, a price file is generated. In FIG. 6 d, the price activity tab222 is used to view the detailed price file 224. Price file 224 providesvalues needed for the profit margin, volume of sales, rates, and otherfactors for each product in the portfolio to achieve the overall profitand total volume of sales of the point selected.

The inputted rules must be translated to mathematical rules for use inthe optimization process. As stated, a given product is defined as a setof attributes and associated values. Thus, if a product has nattributes, the product is a n dimensional vector: product=<V₁, V₂, . .. , V_(n)> where V represents the value of attribute n. The POB systemlimits the maximum number of attributes for all products to 13, notincluding descriptive attributes.

Each attribute has an index (1 to Max) and the following definitions:attribute value set (AVS), attribute axis set (AXIS), product space, andcutoff zone. The AVS is all of the values or value ranges for anattribute within the same partition. An AXIS is a unique, sorted,non-associative container where the AVS is organized in sequentialorder. Product space defines all the possible products, including thoseproducts that do not have a market offering (rate cell). Thus, a productset comprised solely of existing products is a subset of the productspace including only those existing products which have a marketoffering. Similarly, an active product set is a further subset of onlythose existing products contributing to key performance indicator values(i.e., top selling products). The cutoff zone includes all thenon-active or non-existing products in the product space. Thus, forattribute i the following definitions could apply:

AVS _(i)={attribute values (AV)};

AXIS _(i) =[AV ₁ <AV ₂ < . . . <AV _(n) ]|AV _(i) ; ε AVS _(i);

product space={[AV ₁ , AV ₂ , . . . , AV _(n) ]|∀AV _(i) : AV _(i) εaxis_(i)};

cutoff zone={inactive product=[AV ₁ , AV ₂ , . . . , AV _(n)]|inactiveproduct; product space ∪ inactive product ∉ product set}.

FIG. 7 is an attribute layout graphically showing the relationshipbetween AVS, AXIS, product space, and cutoff zone for an attribute i.AXIS_(i) 236 illustrates the AVS_(i) in sequential order. Three activeproducts are identified (230, 232, and 234) with five attribute values(<1>, <2>, <3>, <4>, and <5>). Thus, for attribute i, product 230=<1>,product 232=<3>, and product 234=<5>. Attribute values <2> and <4> donot correspond to active products.

The optimization process only considers rules corresponding to activeproducts, ignoring those for non-active or non-existing products. IfAXIS_(i) 236 had to be followed sequentially the attribute layout shownin FIG. 7 would yield a rule chain of: r₁<r₂<r₃<r₄<r₅. The associatedproduct rules would connect values 1→2, 2→3, 3→4, and 4→5. Since thenon-active or non-existing products corresponding to values <2> and <4>are ignored during optimization, all rules will be ignored resulting inthe loss of functionality required to preserve rules r₁<r₃<r₅.

One method of avoiding such a situation is to generate all possiblepermutations among values <1>, <2>, <3>, <4>, and <5>, therebyconnecting 1→2, 1→3, 1→4, 1→5, etc. This method would retain the desiredfunctionality, but performance would be lost due to the great number ofredundant rules.

To avoid the burden of processing unnecessary rules, inducible rules aredefined by the associated product rules. Looking again at the attributelayout presented in FIG. 7, the solid arrows represent the generatedassociated product rules 231 and 233 connecting values 1→3 and 35. Ifboth rules are increasing pricing rules, rule 231 means “rate of product230<rate of product 232” and rule 233 means “rate of product 232<rate ofproduct 236.”

The inducible rule 235, represented by a dashed arrow, can be inducedfrom associated product rules 231 and 233. There are four principleswhich support the generation of inducible rules:

Pricing-Pricing: r₁>r₂+α, r₂>r₃+β→r₁>r₃+α+β;

Gap-Gap: r ₁ =r ₂ +α, r ₂ =r ₃ +β→r ₁ =r ₃+α+β;

Pricing-Gap: r ₁ >r ₂ +α, r ₂ =r ₃ +β→r ₁ >r ₃+α+β;

Gap-Pricing: r ₁ =r ₂ +α, r ₂ >r ₃ +β→r ₁ >r ₃+β−α.

An associative, keyed, non-unique array containing all active productsavailable in a given partition is used in the process of generating therules. All of the pricing attributes corresponding to products in thearray are known as the product key. Gap or partition attributesassociated with products in the array are known as product data. Thearray embodies implementation details of the rules generation algorithmthat are drawn towards storage and processing of the active products.

Given n pricing attributes, an n dimensional space is created calledpricing space. The difference between the product space and pricingspace is illustrated in FIG. 8. Array 240 contains all definedattributes. Thus, attributes 245-262, either individually or incombination, define all of the active, non-active, and non-existingproducts in the product space 242. Attributes 245-249 comprise theproduct key and therefore define the pricing space 244. Of the remainingattributes, attributes 250-257 are the product data and attributes258-262 are descriptive. Thus, in the illustrated example, pricing space244 has five dimensions whereas product space 242 has 18 dimensions.

FIGS. 9 a and 9 b illustrate a product space with two attributes,pricing and gap. If the product keys of two products are the same, oneequality associated product rule is created for both products (since theproducts are not differentiated by either pricing or gap attributes). Ifthere are N products with the same product key, then N−1 equalityassociated product rules are created connecting the products.

In FIG. 9 a, the product space is illustrated as a two-dimensionalgraph. Axis 264 displays the gap attribute values and axis 266 displaysthe pricing attribute values. Products 268 and 274 have the same productkey even though their gap attributes have different values. Likewise,products 272 and 270 have the same product key and different gapattribute values. In generating the equality associated product rules,the algorithm iterates through each value along the pricing attributeaxis 266, creating equality associated product rules for all productswith the same pricing attribute value: r₂₆₈=r₂₇₄+α and r₂₇₂=r₂₇₀+β,where α and β represent the gap value between products 268 and 274 andproducts 272 and 270, respectively.

For products with different pricing attribute values inequalityassociated product rules are created. Although the rate movementdirection of an attribute could be increasing or decreasing, thedecreasing rules are temporarily reversed to make the axis in productspace only increase in value.

For each value of the gap attribute, one product is selected, such asproducts 268 and 272, and the inequality associated product rule betweenthe two products is created. This inequality associated product rule orinequality rule, along with the equality associated product rulesalready created, could then be used to generate inequality associatedproduct rules between remaining products 274 and 270 through induction:r₂₆₈<r₂₇₂+ν, where ν is the difference in gap attributes for products268 and 272 (the determination of ν is described below).

The difference in gap attributes is generated using a temporary product276 shown in FIG. 9 b (products 270 and 274 are not illustrated forclarity). First, the rules between temporary product 276 and product 268and temporary product 276 and product 272 are calculated. These rulesare then used to generate the rule between product 268 and product 272:

rate of product 272 in pricing attribute>rate of product 276 in pricingattribute+α;

rate of product 268 in gap attribute=rate of product 276 in gapattribute+β;

therefore: rate of product 272>rate of product 268+α−β for products 268and 272.

The associated product rules for the gap attribute are then generated.FIG. 10 presents a two dimensional graph of the pricing attribute forproducts 268, 272, 270, and 274, as well as temporary product 276 and anew product 290. Taking product 268 first, the pricing space isseparated into four areas with respect to product 268, above 282,neutral 286, below 284, and neutral 288.

When iterating product 268, only rules relating to some of the productsin the area above 282 are generated while others are induced such thatonly the minimum number of rules are generated. For example, the rulefor product 290 and product 268 can be an inducible associated productrule determined from the rules relating product 268 and product 270 andrelating product 270 and product 290.

For the products in the area below 284, the rules for product 268 arecreated when generating the rules for products in those areas (product292). No rules are generated between product 268 and products in neutralareas (286 and 288), such as product 272. Thus:

From FIG. 9b: rate of 272 in pricing attribute>rate of 274 in pricingattribute+α;

From FIG. 10: rate of 268 in gap attribute<rate of 274 in gapattribute+β.

From these two rules, rules between 268 and 272 can be induced.

Except for products in a cutoff zone, all products in the pricing spaceare iterated through and associated product rules are created betweenthe current product and other products in the above area for the givenproduct. To minimize the number of rules generated, the product key ofthe current product is connected to the nearest product key in therelevant area above. After each connection, the above area of thecurrent product key can be reduced by subtracting the above area of thejust connected product key. This is repeated until the above area forthe current product shrinks to null. The connections may be droppedafter rule general is complete and the iteration point moves to thenearest product. The connection may then be recalculated for the newproduct key to link its nearest product key in the relevant area above.If the above area does not have any active products or there is no abovearea, the algorithm stops to create the connections and the generationprocess ends. CLR limits the price movement range in optimization andare specified through the interface of FIG. 5 a or the functionalinterface of FIG. 5 b.

A completed optimization cycle results in a set of optimized scenarios.Each scenario represents a portfolio of recommended optimum rates thattargets specific objectives of the financial institution. For example,one scenario can represent recommended rates for achieving maximumprofitability, another can represent recommendations for achievingmaximum volume of transactions, and yet another can represent mixedstrategy targeting improvements in both volume and profitability. ThePOB system can be run multiple times using different combinations ofrules to analyze the resulting scenarios in view of overall keyperformance indicator numbers on any portfolio segment down to adistinct rate cell.

Because the optimization process considers only products which activelycontribute to the key performance indicators, the optimized scenariosusually do not cover all rate cells. Although the actively contributingproducts are the best sellers, they may represent only a small subset ofavailable rate cells. Densification is used to infer rates for missing(empty) rate cells based on optimized rates and the structureestablished by associated product rules and cell-level rules. Sincethese products do not contribute to overall key performance indicators,they rarely affect portfolio level rules and constraints. For example,in FIG. 11, if the rate cell of product 296 is empty but is connected tothe cells of products 294 and 298, both of which actively contribute tothe overall key performance indicators, the allowed range of rate motionfor product 296 can be inferred. The rate of motion of product 296 aswell as the rule connecting products 294 and 298, shown as solid arrow300, are sufficient to create a rate recommendation for product 296.Thus, the rate recommendation for all empty cells can be determinedthrough densification in a manner that does not disturb the results ofthe optimized scenario and maintains the objectives of the financialinstitution.

To perform the densification, multiple scans of the entire attributespace are made for each empty rate cell of a product. For example, fromthe position of product 296 in attribute space, the minimum allowed ratefor product 296 can be determined from the complimentary space aboveproduct 296 (i.e., the space between products 296 and 298 illustrated bydashed arrow 304) and the maximum allowed rate from the space belowproduct 296 (i.e., the space between products 296 and 294 illustrated bydashed arrow 302). That is, the rate for product 296 should be less thanthe minimum of the rates of all products that have a higher rate thanproduct 296, and higher than the maximum of the rates of all productsthat have lower rates than product 296.

After the minimum and maximum range is found, the rate of product 296 iseither set or postponed from being set at some mid-point between theminimum and maximum. Setting the rate of product 296 will be postponedif there is a high density of empty cells surrounding product 296. Thisensures that the densification proceeds from the regions with highdensity of populated cells. In a way the densification process resemblesthe method of completing a jigsaw puzzle. The optimizer provides thepositions of some (but not necessarily all) cells. The filling of theempty cells then starts with the cell immediately adjacent to thealready filled cells and proceeds outwards until all the cells arefilled in.

Both the densification process and rule generation process assume thatthe pre-optimized starting rate configurations are in the feasibleregion of the applicable algorithms, meaning that they do not violateany business rules. In some cases, however, the starting rates doviolate business rules. In such situations, the violated rules arerelaxed by applying modifications that ensure feasibility of the initialpoint while encouraging optimization scenarios that actually fix theviolated rules. For example, if a rule implies A<B, but for the initialpoint is A=B+5>B, the rule will be relaxed to the form A<B+5.

If, after optimization, the rule is still violated, all of the emptycells connected to products A and B through the rule structure canproduce rate recommendations that potentially violate the rules as well.In this case, the densification will be performed based on the structuredefined by relaxed rules as well.

FIG. 12 illustrates an example system for operating the POB system.Individual users would access the POB system through computer system318. Computer system 318 is connected to a communication network 316which connects to a computer 306 via a communication port 314. Computer306 includes a microprocessor 308 connected to hard disk 310 andelectronic memory 312, in which the POB system computer code is stored,as well as communication port 314. The user inputs all requiredinformation and begins the POB system through computer system 318. Theinputted data is transferred from computer system 318 by thecommunication network 316 to computer 306, where the POB system is run.The results returned to the computer system 318 through thecommunication network 316.

While one or more embodiments of the present invention have beenillustrated in detail, the skilled artisan will appreciate thatmodifications and adaptations to those embodiments may be made withoutdeparting from the scope of the present invention as set forth in thefollowing claims.

1. A computer implemented method of determining an optimized rate valueof a target product in a financial system, comprising: providing aplurality of products in the financial system; defining a firstattribute having a first attribute value for each of the plurality ofproducts, wherein the first attribute is a criteria that impacts a ratevalue of the plurality of products; defining a first associated productrule, the first associated product rule being a linear rule between twoof the plurality of products; optimizing the first associated productrule to produce an optimized scenario, wherein optimizing comprises:applying the first associated product rule to two of the plurality ofproducts which actively contributes to a key product indicator;performing densification to infer the optimized rate value for each ofthe plurality of products which do not actively contribute to the keyproduct indicator; and relaxing a starting rate of one of the pluralityof products where the starting rate violates the first associatedproduct rule; and recommending the optimized rate value for the targetproduct to achieve a target in the optimized scenario, wherein thetarget includes a profit value and a sales volume value.
 2. The computerimplemented method of claim 1, further including providing a secondattribute having a second attribute value, wherein the second attributeis a criteria that impacts the rate value of the plurality of productsand the second attribute is different from the first attribute.
 3. Thecomputer implemented method of claim 2, wherein defining the firstassociated product rule further includes: defining an attribute listincluding the first attribute and the second attribute; defining ahierarchy for the first attribute and the second attribute by settingthe second attribute value based on the first attribute value; selectinga rule type for the first associated product rule, wherein the rule typeis selected from the group consisting of inequality, equality, andpartition; selecting a direction for change in a rate value duringoptimization, wherein the direction is selected from the groupconsisting of increase with a minimum gap, decrease with a minimum gap,increase with an exact gap, and decrease with an exact gap; andspecifying a gap value.
 4. The computer implemented method of claim 3,further including providing a second associated product rule, the secondassociated product rule being a linear rule between two of the pluralityof products and being implicitly defined based on the first associatedproduct rule.
 5. The computer implemented method of claim 4, furtherincluding:providing a pricing-pricing inducing principle r ₁ >r ₂ +α, r ₂ >r ₃+β→r ₁ >r ₃+α+β;providing a gap-gap inducing principle r ₁ =r ₂ +α, r ₂ =r ₃ +β→r ₁ =r₃+α+β;providing a pricing-gap inducing principle r ₁ >r ₂ +α, r ₂ =r ₃ +β→r₁ >r ₃+α+β; andproviding a gap-pricing inducing principal r ₁ =r ₂ +α, r ₂ >r ₃ +β→r₁ >r ₃+β−α.
 6. The computer implemented method of claim 3, furtherincluding transforming the first associated product rule into a firstmathematical formula.
 7. The computer implemented method of claim 6,further including: determining that at least one of the plurality ofproducts actively contributes to the key product indicator; determiningthat at least one of the plurality of products does not activelycontribute to the key product indicator; determining that at least oneof the plurality of products is non-existing; providing an index for thefirst attribute; setting the index to i; determining a functionAVS_(i)={AV}, where the function AVS_(i) is a set of the first attributevalue for each of the plurality of products; determining a functionAXIS_(i)=[AV₁<AV₂< . . . <AV_(n)]|AV_(i); ε AVS_(i), where the functionAXIS_(i) is a unique, sorted, non-associative array; determining afunction product space={[AV₁, AV₂, . . . , AV_(n)]|∀AV_(i):AV_(i) εaxis_(i)}, where the function product space defines the plurality ofproducts; and determining a function cutoff zone={inactive product=[AV₁,AV₂, . . . , AV_(n)]| inactive product; product space ∪ inactive product∉ product set}, where the function cutoff zone defines a subset of thefunction product space including at least one of the plurality ofproducts which does not actively contribute to the key product indicatorand at least one of the plurality of products which is non-existing. 8.The computer implemented method of claim 7, further including:determining the first associated product rule is of the rule typeequality; and generating a second mathematical formula between at leasttwo of the plurality of products which actively contribute to the keyproduct indicator and which have a pricing attribute value that is thesame, a pricing attribute value relating to a pricing attribute, thepricing attribute being an attribute type relevant for creating theassociated product rule of the rule type equality and the rule typeinequality.
 9. The computer implemented method of claim 7, furtherincluding: determining the first associated product rule is of the ruletype inequality; and generating a second mathematical formula between atleast two of the plurality of products which actively contribute to thekey product indicator and which have a pricing attribute value that isthe same, a pricing attribute value relating to a pricing attribute, thepricing attribute being an attribute type relevant for creating theassociated product rule of the rule type equality and the rule typeinequality.
 10. The computer implemented method of claim 1, whereinperforming the densification further includes: determining a minimumpossible rate value of one of the plurality of products, where theminimum possible rate value is less than a minimum rate value of amember of the plurality products having a higher rate value; determininga maximum possible rate value of one of the plurality of products, wherethe maximum possible rate value is greater than a maximum rate value ofthe member of the plurality products having a lower rate value; andsetting the optimized rate value to a mid-point between the minimumpossible rate value and the maximum possible rate value.
 11. Thecomputer implemented method of claim 1, wherein relaxing the startingrate further includes relaxing the associated product rule by modifyingthe associated product rule to ensure feasibility of the starting rate.12. The computer implemented method of claim 1, further including:defining a cell-level rule; and optimizing the cell-level rule.
 13. Thecomputer implemented method of claim 12, wherein defining the cell-levelrule further includes: defining a product key; defining the startingrate; defining a minimum rate value for optimization; and defining amaximized rate value for optimization.
 14. The computer implementedmethod of claim 13, further including transforming the cell-level ruleinto a third mathematical formula.
 15. A computer implemented method ofproviding a computer model of an optimized rate value of a targetproduct in a financial system, comprising: providing a plurality ofproducts in a financial system; defining a first attribute having afirst attribute value for each of the plurality of products, wherein thefirst attribute is a criteria that impacts a rate value of the pluralityof products; defining a first associated product rule, the firstassociated product rule being a linear rule between two of the pluralityof products; optimizing the first associated product rule to produce anoptimized scenario, where optimizing comprises: transforming the firstassociated product rule into a first mathematical formula; applying thefirst associated product rule to two of the plurality of products whichactively contributes to a key product indicator; performingdensification to infer the rate value for each of the plurality ofproducts which do not actively contribute to the key product indicator;and relaxing a starting rate of one of the plurality of products wherethe starting rate violates the first associated product rule; andrecommending the optimized rate value of the target product to achieve atarget in the optimized scenario, wherein the target includes a profitvalue and a sales volume value.
 16. The computer implemented method ofclaim 15, further including providing a second attribute having a secondattribute value, wherein the second attribute is a criteria that impactsthe rate value of the plurality of products and the second attribute isdifferent from the first attribute.
 17. The computer implemented methodof claim 16, wherein defining the first associated product rule furtherincludes: defining an attribute list including the first attribute andthe second attribute; defining a hierarchy for the first attribute andthe second attribute by setting the second attribute value based on thefirst attribute value; selecting a rule type for the first associatedproduct rule, wherein the rule type is selected from the groupconsisting of inequality, equality, and partition; selecting a directionfor change in the rate value during optimization, wherein the directionis selected from the group consisting of increase with a minimum gap,decrease with a minimum gap, increase with an exact gap, and decreasewith an exact gap; and specifying a gap value.
 18. The computerimplemented method of claim 17, further including providing a secondassociated product rule, the second associated product rule being alinear rule between two of the plurality of products and beingimplicitly defined based on the first associated product rule.
 19. Thecomputer implemented method of claim 18, further including:providing a pricing-pricing inducing principle r ₁ >r ₂ +α, r ₂ >r ₃+β→r ₁ >r ₃+α+β;providing a gap-gap inducing principle r ₁ =r ₂ +α, r ₂ =r ₃ +β→r ₁ =r₃+α+β;providing a pricing-gap inducing principle r ₁ >r ₂ +α, r ₂ =r ₃ +β→r₁ >r ₃+α+β; andproviding a gap-pricing inducing principal r ₁ =r ₂ +α, r ₂ >r ₃ +β→r₁ >r ₃+β−α.
 20. The computer implemented method of claim 17, furtherincluding: determining that at least one of the plurality of productsactively contributes to the key product indicator; determining that atleast one of the plurality of products does not actively contribute tothe key product indicator; determining that at least one of theplurality of products is non-existing; providing an index for the firstattribute; setting the index to i; determining a function AVS_(i)={AV},where the function AVS_(i) is a set of the first attribute value foreach of the plurality of products; determining a functionAXIS_(i)=[AV₁<AV₂< . . . <AV_(n)]|AV_(i); ε AVS_(i), where the functionAXIS_(i) is a unique, sorted, non-associative array; determining afunction product space={[AV₁, AV₂, . . . , AV_(n)]|∀AV_(i):AV_(i) εaxis_(i)}, where the function product space defines the plurality ofproducts; and determining a function cutoff zone={inactive product=[AV₁,AV₂, . . . , AV_(n)]| inactive product; product space ∪ inactive product∉ product set}, where the function cutoff zone defines a subset of thefunction product space including at least one of the plurality ofproducts which does not actively contribute to the key product indicatorand at least one of the plurality of products which is non-existing. 21.The computer implemented method of claim 20, further including:determining the first associated product rule is of the rule typeequality; and generating a second mathematical formula between at leasttwo of the plurality of products which actively contributes to the keyproduct indicator and which has a pricing attribute value that is thesame, a pricing attribute value relating to a pricing attribute, thepricing attribute being an attribute type relevant for creating theassociated product rule of the rule type equality and the rule typeinequality.
 22. The computer implemented method of claim 20, furtherincluding: determining the first associated product rule is of the ruletype inequality; and generating a second mathematical formula between atleast two of the plurality of products which actively contributes to thekey product indicator and which has a pricing attribute value that isthe same, a pricing attribute value relating to a pricing attribute, thepricing attribute being an attribute type relevant for creating theassociated product rule of the rule type equality and the rule typeinequality.
 23. The computer implemented method of claim 15, furtherincluding: the process of densification further comprising: determininga minimum possible rate value of one of the plurality of products, wherethe minimum possible rate value is less than a minimum rate value of amember of the plurality products having a higher rate value; determininga maximum possible rate value of one of the plurality of products, wherethe maximum possible rate value is greater than a maximum rate value ofthe members of the plurality products having a lower rate value; andsetting the optimized rate value to a mid-point between the minimumpossible rate value and the maximum possible rate value; and relaxingthe starting rate by modifying the associated product rule to ensurefeasibility of the starting rate.
 24. The computer implemented method ofclaim 15, further including: defining a cell-level rule, whereindefining the cell-level rule further comprises: defining a product key;defining the starting rate; defining a minimum rate value foroptimization; and defining a maximized rate value for optimization;transforming the cell-level rule into a third mathematical formula; andoptimizing the cell-level rule.
 25. A computer program product usablewith a programmable computer processor having a computer readableprogram code embodied therein, comprising: computer readable programcode which provides a plurality of products in a financial system;computer readable program code which provides a first attribute having afirst attribute value for each of the plurality of products, wherein thefirst attribute is a criteria that impacts a rate value of the pluralityof products; computer readable program code which provides a firstassociated product rule, the first associated product rule being alinear rule between two of the plurality of products; computer readableprogram code which solves an optimizing process using the firstassociated product rule, wherein optimizing process comprises: computerreadable program code applying the first associated product rule to twoof the plurality of products which actively contributes to a key productindicator; computer readable program code performing densification toinfer an optimized rate value for each of the plurality of productswhich do not actively contribute to the key product indicator; andcomputer readable program code relaxing a starting rate of one of theplurality of products where the starting rate violates the firstassociated product rule; and computer readable program code whichcreates a graph of the optimized scenario that can be used forrecommending the optimized rate value of a target product to achieve atarget in the optimized scenario, wherein the target includes a profitvalue and a sales volume value.